﻿Imports System.Data
Imports PadovadoAPI

Partial Class AdminListaOrganizzatori
    Inherits System.Web.UI.Page

    Public Property SqlGlobal As String
        Set(value As String)
            ViewState("SqlGlobal") = value
        End Set
        Get
            If String.IsNullOrEmpty(ViewState("SqlGlobal")) Then
                ViewState("SqlGlobal") = "SELECT O.PK_Organizzatore as PK_Organizzatore, A.Denominazione as Organizzatore, " & _
                        " MAX(cast(DataInizio as date)) as ultimoevento, O.SitoWeb," & _
                        " CASE isnull(O.intTipoLocale, 100) " & _
                        "     WHEN 100 then 'http://www.padovado.it/locali-divertimenti/Generico/SchedaLocale.aspx?PK_Locale=' + cast(O.PK_Organizzatore as varchar(50)) " & _
                        "     WHEN 1 then 'http://www.padovado.it/locali-divertimenti/Ristorante/SchedaLocale.aspx?PK_Locale=' + cast(O.PK_Organizzatore as varchar(50)) " & _
                        "     WHEN 2 then 'http://www.padovado.it/locali-divertimenti/Ristobar/SchedaLocale.aspx?PK_Locale=' + cast(O.PK_Organizzatore as varchar(50)) " & _
                        "     WHEN 3 then 'http://www.padovado.it/locali-divertimenti/pub/SchedaLocale.aspx?PK_Locale=' + cast(O.PK_Organizzatore as varchar(50)) " & _
                        "     WHEN 4 then 'http://www.padovado.it/locali-divertimenti/discoteca/SchedaLocale.aspx?PK_Locale=' + cast(O.PK_Organizzatore as varchar(50)) " & _
                        "     WHEN 5 then 'http://www.padovado.it/locali-divertimenti/proloco/SchedaLocale.aspx?PK_Locale=' + cast(O.PK_Organizzatore as varchar(50))  " & _
                        "     WHEN 7 then 'http://www.padovado.it/locali-divertimenti/fiera/SchedaLocale.aspx?PK_Locale=' + cast(O.PK_Organizzatore as varchar(50))  " & _
                        "     WHEN 8 then 'http://www.padovado.it/locali-divertimenti/pizzeria/SchedaLocale.aspx?PK_Locale=' + cast(O.PK_Organizzatore as varchar(50))  " & _
                        "     WHEN 9 then 'http://www.padovado.it/locali-divertimenti/bar/SchedaLocale.aspx?PK_Locale=' + cast(O.PK_Organizzatore as varchar(50))  " & _
                        "     WHEN 10 then 'http://www.padovado.it/locali-divertimenti/EnteBenefico/SchedaLocale.aspx?PK_Locale=' + cast(O.PK_Organizzatore as varchar(50))  " & _
                        "     WHEN 11 then 'http://www.padovado.it/locali-divertimenti/museo/SchedaLocale.aspx?PK_Locale=' + cast(O.PK_Organizzatore as varchar(50))  " & _
                        "     WHEN 12 then 'http://www.padovado.it/locali-divertimenti/CentroCommerciale/SchedaLocale.aspx?PK_Locale=' + cast(O.PK_Organizzatore as varchar(50))  " & _
                        "     WHEN 13 then 'http://www.padovado.it/locali-divertimenti/Parrocchia/SchedaLocale.aspx?PK_Locale=' + cast(O.PK_Organizzatore as varchar(50))  " & _
                        "     WHEN 14 then 'http://www.padovado.it/locali-divertimenti/Cinema/SchedaLocale.aspx?PK_Locale=' + cast(O.PK_Organizzatore as varchar(50))  " & _
                        "     WHEN 15 then 'http://www.padovado.it/locali-divertimenti/Etnico/SchedaLocale.aspx?PK_Locale=' + cast(O.PK_Organizzatore as varchar(50))  " & _
                        "     WHEN 16 then 'http://www.padovado.it/locali-divertimenti/trattoria/SchedaLocale.aspx?PK_Locale=' + cast(O.PK_Organizzatore as varchar(50))  " & _
                        "     WHEN 6 then 'http://www.padovado.it/locali-divertimenti/organizzatoredieventi/SchedaLocale.aspx?PK_Locale=' + cast(O.PK_Organizzatore as varchar(50)) end as LinkInterno " & _
                    " FROM Organizzatore O INNER JOIN Anagrafica A ON A.PK_Anagrafica = O.FK_Anagrafica  " & _
                    " INNER JOIN Indirizzo I ON I.PK_Indirizzo = O.FK_Indirizzo   " & _
                    " INNER JOIN Evento_Organizzatore EO ON EO.FK_Organizzatore = O.PK_Organizzatore " & _
                    " INNER JOIN Evento E ON E.PK_Evento = EO.FK_Evento" & _
                    " WHERE(O.Deleted = 0 And I.Deleted = 0 And A.Deleted = 0)" & _
                    " GROUP BY PK_Organizzatore, A.Denominazione, O.SitoWeb, O.intTipoLocale" & _
                    " ORDER BY A.Denominazione  "
            End If
            Return ViewState("SqlGlobal")
        End Get
    End Property

    Protected Sub Page_Load(sender As Object, e As System.EventArgs) Handles Me.Load
        If String.IsNullOrEmpty(Session("UserInSession")) Then
            Response.Redirect("Admin.aspx")
        End If

        CaricaGrid(SqlGlobal)
    End Sub

    Public Sub CaricaGrid(sql As String)
        Dim ds As New DataSet
        Dim dbo As New DBObject
        ds = dbo.FillDS(sql, Nothing, CommandType.Text)

        If Not IsNothing(ds) AndAlso (ds.Tables.Count > 0) AndAlso ds.Tables(0).Rows.Count > 0 Then
            ds.Tables(0).Columns.Add("Semaforo")
            For Each dr As DataRow In ds.Tables(0).Rows
                If (CDate(dr.Item("ultimoevento")) <= DateTime.Now) Then
                    dr.Item("Semaforo") = "~/Styles/Images/rosso.jpg"
                ElseIf (CDate(dr.Item("ultimoevento")) <= DateTime.Now.AddDays(3)) Then
                    dr.Item("Semaforo") = "~/Styles/Images/arancione.jpg"
                Else
                    dr.Item("Semaforo") = "~/Styles/Images/verde.jpg"

                End If
            Next
            GVOrganizzatori.DataSource = ds.Tables(0)
            GVOrganizzatori.DataBind()
        End If
    End Sub

    Protected Sub GVOrganizzatori_PageIndexChanging(sender As Object, e As GridViewPageEventArgs) Handles GVOrganizzatori.PageIndexChanging

        GVOrganizzatori.PageIndex = e.NewPageIndex

        CaricaGrid(SqlGlobal)
    End Sub

End Class
